Various methods for detecting knocking (knock) occurring in an internal combustion engine have been proposed. For example, a technique determines that knocking has occurred when the magnitude of vibration of the internal combustion engine is larger than a threshold value. There is a case, however, where the magnitude of noise such as vibration that occurs when an intake valve or an exhaust valve for example closes is larger than the threshold value despite the fact that knocking has not occurred. In this case, although knocking has not occurred, it could be erroneously determined that knocking has occurred. Accordingly, a technique has been proposed that determines whether knocking has occurred or not based on the waveform of vibration, in order to consider characteristics other than the magnitude such as the crank angle at which the vibration occurs and the damping rate.
Japanese Patent Laying-Open No. 2005-330954 discloses a knocking determination device for an internal combustion engine that uses the waveform of vibration to precisely determine whether or not knocking has occurred. The knocking determination device disclosed in Japanese Patent Laying-Open No. 2005-330954 includes a crank angle detection unit for detecting a crank angle of the internal combustion engine, a vibration detection unit for detecting a value relevant to the magnitude of vibration of the internal combustion engine, a waveform detection unit for detecting a waveform of vibration of the internal combustion engine in a predetermined range of the crank angle, based on a value determined by dividing the value relevant to the magnitude of vibration by a maximum one of the detected values relevant to the magnitude of vibration, a storage unit for storing in advance a waveform of vibration of the internal combustion engine, and a determination unit for determining whether or not knocking has occurred in the internal combustion engine, based on a result of comparison between the detected waveform and the stored waveform. The determination unit determines whether or not knocking has occurred based on a value representing a deviation of the detected waveform from the stored waveform. The value representing the deviation is calculated by dividing the sum of differences which are each a difference between a magnitude on the detected waveform and a magnitude on the stored waveform determined for each crank angle, by a value determined by integrating the magnitude on the stored waveform by the crank angle.
Regarding the knocking determination device disclosed in the above-referenced publication, the crank angle detection unit detects the crank angle of the internal combustion engine, the vibration detection unit detects a value relevant to the magnitude of vibration, the waveform detection unit detects the waveform of vibration of the internal combustion engine in a predetermined range of the crank angle, based on the value relevant to the magnitude (intensity) of vibration. The storage unit stores in advance the waveform of vibration of the internal combustion engine, and the determination unit determines whether knocking has occurred or not in the internal combustion engine, based on the result of comparison between the detected waveform and the stored waveform. Thus, a knock waveform model, which is a waveform of vibration when knocking occurs, is prepared through experiments or the like for example and stored in advance, and the knock waveform model and the detected waveform are compared with each other. In this way, whether or not knocking has occurred can be determined. Accordingly, whether or not any vibration of the engine is vibration due to knocking can be analyzed in more detail. Consequently, it can be determined precisely whether or not knocking has occurred.
The knocking determination device disclosed in Japanese Patent Laying-Open No. 2005-330954, however, detects a waveform that is normalized by dividing the value relevant to the magnitude of vibration by its maximum value. Therefore, regardless of whether the detected magnitude is large or small, the maximum magnitude on the detected waveform is “1” all the time. Thus, even if the original magnitude before being divided by the maximum value is small, the value representing the deviation of the waveform is likely to be a value which seems to represent knocking if the shape of the detected waveform is similar to the shape of the stored waveform. This is for the following reason. The value determined by integrating the magnitude on the stored waveform by the crank angle, namely the area of the stored waveform is relatively larger than the difference between the magnitude on the detected waveform and the magnitude on the stored waveform, and thus the influence of the difference in magnitude is relatively small. Then, it could be erroneously determined that knocking has occurred, despite the fact that knocking has not occurred.